package controller

import (
	"chitchat_http/server"
	"chitchat_http/util"
	"github.com/doujunyu/gogo/job"
)

// BbsByRelease 发布动态
func BbsByRelease(j *job.Job) {
	if j.Input["content"] == "" {
		j.JsonError(nil, "内容不能为空")
		return
	}
	typeId := util.StringToInt64(j.Input["type_id"])
	if typeId <= 0 {
		j.JsonError(nil, "缺少类型")
		return
	}
	err := server.BbsByRelease(j.GroupData["user_id"].(int64),j.Input["title"], j.Input["content"], j.Input["picture"],typeId)
	if err != nil {
		j.JsonError(nil, err.Error())
		return
	}
	j.JsonSuccess()
	return

}

// BbsByDelete 动态删除
func BbsByDelete(j *job.Job) {
	bbsId := util.StringToInt64(j.Input["bbs_id"])
	if bbsId <= 0 {
		j.JsonError(nil, "数据不存在")
		return
	}
	err := server.BbsByDelete(j.GroupData["user_id"].(int64), bbsId)
	if err != nil {
		j.JsonError(nil, err.Error())
		return
	}
	j.JsonSuccess()
	return
}

// BbsByPraiseInc 动态点赞
func BbsByPraiseInc(j *job.Job) {
	bbsId := util.StringToInt64(j.Input["bbs_id"])
	if bbsId <= 0 {
		j.JsonError(nil, "数据不存在")
		return
	}
	err := server.BbsByPraiseInc(j.GroupData["user_id"].(int64), bbsId)
	if err != nil {
		j.JsonError(nil, err.Error())
		return
	}
	j.JsonSuccess()
	return
}

// BbsByPraiseDec 动态点赞取消
func BbsByPraiseDec(j *job.Job) {
	bbsId := util.StringToInt64(j.Input["bbs_id"])
	if bbsId <= 0 {
		j.JsonError(nil, "数据不存在")
		return
	}
	err := server.BbsByPraiseDec(j.GroupData["user_id"].(int64), bbsId)
	if err != nil {
		j.JsonError(nil, err.Error())
		return
	}
	j.JsonSuccess()
	return
}


// BbsDiscussByReply 评论回复
func BbsDiscussByReply(j *job.Job) {
	bbsId := util.StringToInt64(j.Input["bbs_id"])
	if bbsId <= 0 {
		j.JsonError(nil, "数据不存在")
		return
	}
	parentId := util.StringToInt64(j.Input["parent_id"])
	var err error
	if parentId == 0 {//评论动态
		err = server.BbsDiscussByInsert(j.GroupData["user_id"].(int64), bbsId, j.Input["content"])
	}else{//回复评论
		err = server.BbsDiscussByReply(j.GroupData["user_id"].(int64), parentId, j.Input["content"])
	}
	if err != nil {
		j.JsonError(nil, err.Error())
		return
	}
	j.JsonSuccess()
	return
}

// BbsDiscussByDelete 删除评论
func BbsDiscussByDelete(j *job.Job) {
	bbsDiscussId := util.StringToInt64(j.Input["bbs_discuss_id"])
	if bbsDiscussId <= 0 {
		j.JsonError(nil, "数据不存在")
		return
	}
	err := server.BbsDiscussByDelete(j.GroupData["user_id"].(int64), bbsDiscussId)
	if err != nil {
		j.JsonError(nil, err.Error())
		return
	}
	j.JsonSuccess()
	return
}

// BbsDiscussByPraiseInc 动态评论点赞+1
func BbsDiscussByPraiseInc(j *job.Job) {
	bbsDiscussId := util.StringToInt64(j.Input["bbs_discuss_id"])
	if bbsDiscussId <= 0 {
		j.JsonError(nil, "数据不存在")
		return
	}
	err := server.BbsDiscussByPraiseInc(j.GroupData["user_id"].(int64), bbsDiscussId)
	if err != nil {
		j.JsonError(nil, err.Error())
		return
	}
	j.JsonSuccess()
	return
}

// BbsDiscussByPraiseDec 动态评论点赞-1
func BbsDiscussByPraiseDec(j *job.Job) {
	bbsDiscussId := util.StringToInt64(j.Input["bbs_discuss_id"])
	if bbsDiscussId <= 0 {
		j.JsonError(nil, "数据不存在")
		return
	}
	err := server.BbsDiscussByPraiseDec(j.GroupData["user_id"].(int64), bbsDiscussId)
	if err != nil {
		j.JsonError(nil, err.Error())
		return
	}
	j.JsonSuccess()
	return
}
//动态列表
func BbsByList(j *job.Job){
	typeId := util.StringToInt64(j.Input["type_id"])
	data := server.BbsByList(j.GroupData["user_id"].(int64),typeId,j.Input["search"],j.Input["page"],j.Input["page_size"])
	if len(data) == 0 {
		j.JsonSuccess()
		return
	}
	j.JsonSuccess(data)
	return

}
//动态详情
func BbsByInfo(j *job.Job){
	if j.Input["bbs_id"] == "" {
		j.JsonError(nil, "数据不存在")
		return
	}
	bbsId := util.StringToInt64(j.Input["bbs_id"])
	data,err := server.BbsByInfo(j.GroupData["user_id"].(int64),bbsId)
	if err != nil {
		j.JsonError(nil, err.Error())
		return
	}
	j.JsonSuccess(data)
	return
}

//// BbsDiscussByOneLevelList 动态一级分类
//func BbsDiscussByOneLevelList(j *job.Job){
//	if j.Input["bbs_id"] == "" {
//		j.JsonError(nil, "数据不存在")
//		return
//	}
//	bbsId := util.StringToInt64(j.Input["bbs_id"])
//	page := j.Input["page"]
//	if util.StringToInt64(j.Input["page"]) == 0 {
//		page = "1"
//	}
//	data := server.BbsDiscussByOneLevelList(j.GroupData["user_id"].(int64),bbsId,page)
//	if len(data) <= 0 {
//		j.JsonSuccess(make([]int64,0))
//		return
//	}
//	j.JsonSuccess(data)
//	return
//}

//// BbsDiscussByTwoLevelList 动态二级分类
//func BbsDiscussByTwoLevelList(j *job.Job){
//	if j.Input["parent_id"] == "" {
//		j.JsonError(nil, "数据不存在")
//		return
//	}
//	parentId := util.StringToInt64(j.Input["parent_id"])
//	page := j.Input["page"]
//	if util.StringToInt64(j.Input["page"]) == 0 {
//		page = "1"
//	}
//	data := server.BbsDiscussByTwoLevelList(j.GroupData["user_id"].(int64),parentId,page)
//	if len(data) <= 0 {
//		j.JsonSuccess(make([]int64,0))
//		return
//	}
//	j.JsonSuccess(data)
//	return
//}

// BbsDiscussByList 评论列表
func BbsDiscussByList(j *job.Job){
	if j.Input["bbs_id"] == "" {
		j.JsonError(nil, "缺少数据")
		return
	}
	parentId := util.StringToInt64(j.Input["parent_id"])
	bbsId := util.StringToInt64(j.Input["bbs_id"])
	page := j.Input["page"]
	if util.StringToInt64(j.Input["page"]) == 0 {
		page = "1"
	}
	data := server.BbsDiscussByList(j.GroupData["user_id"].(int64),bbsId,parentId,page)
	if len(data) <= 0 {
		j.JsonSuccess(make([]int64,0))
		return
	}
	j.JsonSuccess(data)
	return
}

